\hypertarget{class_zebulon_1_1_surface_1_1_global_command}{
\section{Zebulon::Surface::GlobalCommand Class Reference}
\label{class_zebulon_1_1_surface_1_1_global_command}\index{Zebulon::Surface::GlobalCommand@{Zebulon::Surface::GlobalCommand}}
}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_aae9f5c3ac7c2c629020c46dc4f204102}{
int {\bfseries Initialize} (\hyperlink{class_zebulon_1_1_surface_1_1_global_info}{GlobalInfo} $\ast$globalInfo, unsigned int delayTimeMs=50)}
\label{class_zebulon_1_1_surface_1_1_global_command_aae9f5c3ac7c2c629020c46dc4f204102}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a7133004326a1f40b0f6f403999584d30}{
int {\bfseries SetAxialVelocity} (double axialVelocity)}
\label{class_zebulon_1_1_surface_1_1_global_command_a7133004326a1f40b0f6f403999584d30}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a0bbd06b24cc1d4c5458de235149519bc}{
int {\bfseries SetAxialPower} (double axialPower)}
\label{class_zebulon_1_1_surface_1_1_global_command_a0bbd06b24cc1d4c5458de235149519bc}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a16ea59269b284d1ec032cd2c7c604da3}{
int {\bfseries SetLateralVelocity} (double lateralVelocity)}
\label{class_zebulon_1_1_surface_1_1_global_command_a16ea59269b284d1ec032cd2c7c604da3}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a2be29d4806b2f206f29cb08c6e45f479}{
int {\bfseries SetLateralPower} (double lateralPower)}
\label{class_zebulon_1_1_surface_1_1_global_command_a2be29d4806b2f206f29cb08c6e45f479}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_afca0f1ddb00c97f146e8734a746fbb16}{
int {\bfseries SetDesiredHeading} (double heading)}
\label{class_zebulon_1_1_surface_1_1_global_command_afca0f1ddb00c97f146e8734a746fbb16}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a69a67fa3e99ab91fb27dbfe99b0d8e4d}{
int {\bfseries SetHeadingFromPosition} (double easting, double northing)}
\label{class_zebulon_1_1_surface_1_1_global_command_a69a67fa3e99ab91fb27dbfe99b0d8e4d}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a581d1ef1a8c9619d30ecb76503e7f4fc}{
int {\bfseries SetTurnVelocity} (double turnVelocity)}
\label{class_zebulon_1_1_surface_1_1_global_command_a581d1ef1a8c9619d30ecb76503e7f4fc}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ad9e2b91540b3a94969d557037561f981}{
int {\bfseries SetTurnPower} (double turnPower)}
\label{class_zebulon_1_1_surface_1_1_global_command_ad9e2b91540b3a94969d557037561f981}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ac0f4b3e4f756373940b93fc616bf5b1a}{
int {\bfseries SetHorn} (bool hornValue)}
\label{class_zebulon_1_1_surface_1_1_global_command_ac0f4b3e4f756373940b93fc616bf5b1a}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a0f224803beba2a30eac03733ed881b32}{
int {\bfseries SetGreenLight} (bool greenLightValue)}
\label{class_zebulon_1_1_surface_1_1_global_command_a0f224803beba2a30eac03733ed881b32}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ac855a29473e42341d5d6fb50137a58be}{
int {\bfseries SetRedLight} (bool redLightValue)}
\label{class_zebulon_1_1_surface_1_1_global_command_ac855a29473e42341d5d6fb50137a58be}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a20bfd974f3ef3f1070d61b4779ab416f}{
int {\bfseries SetArmPosition} (bool armPosition)}
\label{class_zebulon_1_1_surface_1_1_global_command_a20bfd974f3ef3f1070d61b4779ab416f}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a419bef968ff05821a73c48fcb3693dd7}{
int {\bfseries SetArmEnable} (bool armEnable)}
\label{class_zebulon_1_1_surface_1_1_global_command_a419bef968ff05821a73c48fcb3693dd7}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a5fb5db10f4356905a1593c990ba9040e}{
int {\bfseries FireWaterCannon} (double cannonValue)}
\label{class_zebulon_1_1_surface_1_1_global_command_a5fb5db10f4356905a1593c990ba9040e}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ab08c2e7591aa3d29edfe2d84e51af692}{
int {\bfseries PanServoVelocity} (double panVelocity)}
\label{class_zebulon_1_1_surface_1_1_global_command_ab08c2e7591aa3d29edfe2d84e51af692}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ad02370e309ad4731cd7c9fc87a8a8b51}{
int {\bfseries PanServoPosition} (double panPosition)}
\label{class_zebulon_1_1_surface_1_1_global_command_ad02370e309ad4731cd7c9fc87a8a8b51}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a0b8c7ad0e91a66693a9ab7a3df215817}{
int {\bfseries TiltServoVelocity} (double tiltVelocity)}
\label{class_zebulon_1_1_surface_1_1_global_command_a0b8c7ad0e91a66693a9ab7a3df215817}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a9245160639338d410b213d2d89f5bd77}{
int {\bfseries TiltServoPosition} (double tiltPosition)}
\label{class_zebulon_1_1_surface_1_1_global_command_a9245160639338d410b213d2d89f5bd77}

\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a011865e58dffc2cecb76c3d7f6f2a8a8}{
static void {\bfseries CommandThread} (void $\ast$args)}
\label{class_zebulon_1_1_surface_1_1_global_command_a011865e58dffc2cecb76c3d7f6f2a8a8}

\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a8e21e8c38a45dda3270f23f3c731f52e}{
\hyperlink{class_zebulon_1_1_surface_1_1_global_info}{GlobalInfo} $\ast$ {\bfseries mGlobalInfo}}
\label{class_zebulon_1_1_surface_1_1_global_command_a8e21e8c38a45dda3270f23f3c731f52e}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ad7a5b8bb25adce1f174fb723f6959bbb}{
\hyperlink{class_zebulon_1_1_surface_1_1_p_i_d_controller}{PIDController} $\ast$ {\bfseries mAxial}}
\label{class_zebulon_1_1_surface_1_1_global_command_ad7a5b8bb25adce1f174fb723f6959bbb}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a809def87905e37f499f628e5f0a839ae}{
\hyperlink{class_zebulon_1_1_surface_1_1_p_i_d_controller}{PIDController} $\ast$ {\bfseries mLateral}}
\label{class_zebulon_1_1_surface_1_1_global_command_a809def87905e37f499f628e5f0a839ae}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_aaaca1069086a172d6553e8e23e28dd08}{
\hyperlink{class_zebulon_1_1_surface_1_1_p_i_d_controller}{PIDController} $\ast$ {\bfseries mHeading}}
\label{class_zebulon_1_1_surface_1_1_global_command_aaaca1069086a172d6553e8e23e28dd08}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a877e72167cb0b251ef92712f95535f81}{
\hyperlink{class_zebulon_1_1_surface_1_1_ramp_controller}{RampController} $\ast$ {\bfseries mCannon}}
\label{class_zebulon_1_1_surface_1_1_global_command_a877e72167cb0b251ef92712f95535f81}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_afc5ae5d59c7b5502c257f256a44e5a20}{
int {\bfseries mAxialMode}}
\label{class_zebulon_1_1_surface_1_1_global_command_afc5ae5d59c7b5502c257f256a44e5a20}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ada349bf490594398115e8a7a3ff28063}{
double {\bfseries mAxialVelocity}}
\label{class_zebulon_1_1_surface_1_1_global_command_ada349bf490594398115e8a7a3ff28063}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_aeac3ad3e81b4125c9d0305c845af063c}{
double {\bfseries mAxialPower}}
\label{class_zebulon_1_1_surface_1_1_global_command_aeac3ad3e81b4125c9d0305c845af063c}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_aea89adbc4c416aee6969000f4b71e815}{
CxUtils::Mutex {\bfseries mAxialMutex}}
\label{class_zebulon_1_1_surface_1_1_global_command_aea89adbc4c416aee6969000f4b71e815}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a8ffed9d7a25fa01e3d1104663a42d7cf}{
int {\bfseries mLateralMode}}
\label{class_zebulon_1_1_surface_1_1_global_command_a8ffed9d7a25fa01e3d1104663a42d7cf}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ab5e1fbd797f7d663b1b9e2dceb278b47}{
double {\bfseries mLateralVelocity}}
\label{class_zebulon_1_1_surface_1_1_global_command_ab5e1fbd797f7d663b1b9e2dceb278b47}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a2f7280deee6f14c45fc778eedb841aa1}{
double {\bfseries mLateralPower}}
\label{class_zebulon_1_1_surface_1_1_global_command_a2f7280deee6f14c45fc778eedb841aa1}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a008bd5dacf3bd2a1a5f05e32f014ce38}{
CxUtils::Mutex {\bfseries mLateralMutex}}
\label{class_zebulon_1_1_surface_1_1_global_command_a008bd5dacf3bd2a1a5f05e32f014ce38}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_abe5f076a793733a31a56a33f3bedbf99}{
int {\bfseries mHeadingMode}}
\label{class_zebulon_1_1_surface_1_1_global_command_abe5f076a793733a31a56a33f3bedbf99}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_accebb6374470b3c61273c4586943c9d7}{
double {\bfseries mDesiredHeading}}
\label{class_zebulon_1_1_surface_1_1_global_command_accebb6374470b3c61273c4586943c9d7}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a77409bd9f981d672d420694709d7e3ae}{
double {\bfseries mDesiredEasting}}
\label{class_zebulon_1_1_surface_1_1_global_command_a77409bd9f981d672d420694709d7e3ae}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a2dc4525a20366f4f7f9b08383dbb2b06}{
double {\bfseries mDesiredNorthing}}
\label{class_zebulon_1_1_surface_1_1_global_command_a2dc4525a20366f4f7f9b08383dbb2b06}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_af6e82e05078ac76a5ecbc9ea8d5cf72e}{
double {\bfseries mTurnVelocity}}
\label{class_zebulon_1_1_surface_1_1_global_command_af6e82e05078ac76a5ecbc9ea8d5cf72e}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a2063936ddea444a0e2f5e8927b7774ee}{
double {\bfseries mTurnPower}}
\label{class_zebulon_1_1_surface_1_1_global_command_a2063936ddea444a0e2f5e8927b7774ee}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a52da21ca8f67d0e64555577279aec7e1}{
CxUtils::Mutex {\bfseries mHeadingMutex}}
\label{class_zebulon_1_1_surface_1_1_global_command_a52da21ca8f67d0e64555577279aec7e1}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_aba29839297ac1aab719dd1d5bac6bd45}{
bool {\bfseries mHorn}}
\label{class_zebulon_1_1_surface_1_1_global_command_aba29839297ac1aab719dd1d5bac6bd45}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ac53a17ced3abe9a62c9a1b2976182baf}{
bool {\bfseries mGreenLight}}
\label{class_zebulon_1_1_surface_1_1_global_command_ac53a17ced3abe9a62c9a1b2976182baf}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a4e76730d50f25ff66c140d5747ba64f5}{
bool {\bfseries mRedLight}}
\label{class_zebulon_1_1_surface_1_1_global_command_a4e76730d50f25ff66c140d5747ba64f5}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a737aef16a6297d78a20ae40c8b2bd1d3}{
bool {\bfseries mArmPosition}}
\label{class_zebulon_1_1_surface_1_1_global_command_a737aef16a6297d78a20ae40c8b2bd1d3}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ab0ecbb1e020595f4d40fa1ab7cf0f46a}{
bool {\bfseries mArmEnable}}
\label{class_zebulon_1_1_surface_1_1_global_command_ab0ecbb1e020595f4d40fa1ab7cf0f46a}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a8b0f814442d72cf89a45b2c1f7dda347}{
CxUtils::Mutex {\bfseries mExternalMutex}}
\label{class_zebulon_1_1_surface_1_1_global_command_a8b0f814442d72cf89a45b2c1f7dda347}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a8b73fd38f3b2e180866c3c82f85674b1}{
double {\bfseries mCannonValue}}
\label{class_zebulon_1_1_surface_1_1_global_command_a8b73fd38f3b2e180866c3c82f85674b1}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a895d6b5c3f4737ee1c5d6d2d740f0fe9}{
CxUtils::Mutex {\bfseries mCannonMutex}}
\label{class_zebulon_1_1_surface_1_1_global_command_a895d6b5c3f4737ee1c5d6d2d740f0fe9}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a9aabec64427adcac75b5c77008a3ce7e}{
int {\bfseries mPanMode}}
\label{class_zebulon_1_1_surface_1_1_global_command_a9aabec64427adcac75b5c77008a3ce7e}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a10a5f5bea09b26bc1e9b13c1f54ea689}{
int {\bfseries mTiltMode}}
\label{class_zebulon_1_1_surface_1_1_global_command_a10a5f5bea09b26bc1e9b13c1f54ea689}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a5df975370a951d63d5be5d2df58020a1}{
double {\bfseries mPanVelocity}}
\label{class_zebulon_1_1_surface_1_1_global_command_a5df975370a951d63d5be5d2df58020a1}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a8a54bee58f5ee008d7dcb26d8f2f9ece}{
double {\bfseries mPanPosition}}
\label{class_zebulon_1_1_surface_1_1_global_command_a8a54bee58f5ee008d7dcb26d8f2f9ece}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ac2ca6422953061605906294ad4c62108}{
double {\bfseries mTiltVelocity}}
\label{class_zebulon_1_1_surface_1_1_global_command_ac2ca6422953061605906294ad4c62108}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a36a1f27dfcac847a35df9375cbc49b4f}{
double {\bfseries mTiltPosition}}
\label{class_zebulon_1_1_surface_1_1_global_command_a36a1f27dfcac847a35df9375cbc49b4f}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a79ece3d7953d02f8dbe4e58b577dea8e}{
CxUtils::Mutex {\bfseries mPanServoMutex}}
\label{class_zebulon_1_1_surface_1_1_global_command_a79ece3d7953d02f8dbe4e58b577dea8e}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a3869183c47ea875a5e3601331361897e}{
CxUtils::Mutex {\bfseries mTiltServoMutex}}
\label{class_zebulon_1_1_surface_1_1_global_command_a3869183c47ea875a5e3601331361897e}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ae72f9c01b2166f1b605fbfb8fa9a921a}{
unsigned int {\bfseries mDelayTimeMs}}
\label{class_zebulon_1_1_surface_1_1_global_command_ae72f9c01b2166f1b605fbfb8fa9a921a}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a7217c2fc8e01b9876196a40c6b627a6c}{
CxUtils::Thread {\bfseries mCommandThread}}
\label{class_zebulon_1_1_surface_1_1_global_command_a7217c2fc8e01b9876196a40c6b627a6c}

\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_a184d2f6e2d8f70b3480dcd54f1b12c12}{
Jaus::Address \hyperlink{class_zebulon_1_1_surface_1_1_global_command_a184d2f6e2d8f70b3480dcd54f1b12c12}{mPrimitiveDriverID}}
\label{class_zebulon_1_1_surface_1_1_global_command_a184d2f6e2d8f70b3480dcd54f1b12c12}

\begin{DoxyCompactList}\small\item\em Drives the boat. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_ac600fa2074f0f5ea072a99e7ac2fbd6a}{
Jaus::Address \hyperlink{class_zebulon_1_1_surface_1_1_global_command_ac600fa2074f0f5ea072a99e7ac2fbd6a}{mTargetingVisualSensorID}}
\label{class_zebulon_1_1_surface_1_1_global_command_ac600fa2074f0f5ea072a99e7ac2fbd6a}

\begin{DoxyCompactList}\small\item\em Pan/Tilt of camera with canon. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_surface_1_1_global_command_aa8ec8b785355ccb4b8508ca21a8decef}{
Jaus::Address \hyperlink{class_zebulon_1_1_surface_1_1_global_command_aa8ec8b785355ccb4b8508ca21a8decef}{mArmmiteID}}
\label{class_zebulon_1_1_surface_1_1_global_command_aa8ec8b785355ccb4b8508ca21a8decef}

\begin{DoxyCompactList}\small\item\em ID of the custom component interacting with the Armmite. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
C:/Users/Matt/Documents/School/Robotics/zebulon/v2/surface/include/globalcommand.h\item 
C:/Users/Matt/Documents/School/Robotics/zebulon/v2/surface/src/globalcommand.cpp\end{DoxyCompactItemize}
